using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("PracticePickerTrayDisplay")]
	public class PracticePickerTrayDisplay : MonoBehaviour
	{
		public UberText m_trayLabel => method_3<UberText>("m_trayLabel");

		public StandardPegButtonNew m_backButton => method_3<StandardPegButtonNew>("m_backButton");

		public PlayButton m_playButton => method_3<PlayButton>("m_playButton");

		public PracticeAIButton m_AIButtonPrefab => method_3<PracticeAIButton>("m_AIButtonPrefab");

		public GameObject m_AIButtonsContainer => method_3<GameObject>("m_AIButtonsContainer");

		public float m_AIButtonHeight => method_2<float>("m_AIButtonHeight");

		public float m_trayAnimationTime => method_2<float>("m_trayAnimationTime");

		public iTween.EaseType m_trayInEaseType => method_2<iTween.EaseType>("m_trayInEaseType");

		public iTween.EaseType m_trayOutEaseType => method_2<iTween.EaseType>("m_trayOutEaseType");

		public List<ScenarioDbfRecord> m_sortedMissionRecords => method_3<Class271<ScenarioDbfRecord>>("m_sortedMissionRecords")?.method_25();

		public List<PracticeAIButton> m_practiceAIButtons => method_3<Class271<PracticeAIButton>>("m_practiceAIButtons")?.method_25();

		public List<Achievement> m_lockedHeroes => method_3<Class271<Achievement>>("m_lockedHeroes")?.method_25();

		public PracticeAIButton m_selectedPracticeAIButton => method_3<PracticeAIButton>("m_selectedPracticeAIButton");

		public int m_heroDefsToLoad => method_2<int>("m_heroDefsToLoad");

		public bool m_buttonsCreated => method_2<bool>("m_buttonsCreated");

		public bool m_buttonsReady => method_2<bool>("m_buttonsReady");

		public bool m_heroesLoaded => method_2<bool>("m_heroesLoaded");

		public bool m_shown => method_2<bool>("m_shown");

		public static int NUM_AI_BUTTONS_TO_SHOW => MonoClass.smethod_6<int>(TritonHs.MainAssemblyPath, "", "PracticePickerTrayDisplay", "NUM_AI_BUTTONS_TO_SHOW");

		public static float PRACTICE_TRAY_MATERIAL_Y_OFFSET => MonoClass.smethod_6<float>(TritonHs.MainAssemblyPath, "", "PracticePickerTrayDisplay", "PRACTICE_TRAY_MATERIAL_Y_OFFSET");

		public float AIButtonHeight => method_11<float>("get_AIButtonHeight", Array.Empty<object>());

		public PracticePickerTrayDisplay(IntPtr address, string className)
			: base(address, className)
		{
		}

		public PracticePickerTrayDisplay(IntPtr address)
			: this(address, "PracticePickerTrayDisplay")
		{
		}

		public static PracticePickerTrayDisplay Get()
		{
			return MonoClass.smethod_15<PracticePickerTrayDisplay>(TritonHs.MainAssemblyPath, "", "PracticePickerTrayDisplay", "Get", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void Start()
		{
			method_8("Start");
		}

		public void Init()
		{
			method_8("Init");
		}

		public void Show()
		{
			method_8("Show");
		}

		public void Hide()
		{
			method_8("Hide");
		}

		public void OnGameDenied()
		{
			method_8("OnGameDenied");
		}

		public bool IsShown()
		{
			return method_11<bool>("IsShown", Array.Empty<object>());
		}

		public bool IsLoaded()
		{
			return method_11<bool>("IsLoaded", Array.Empty<object>());
		}

		public void InitMissionRecords()
		{
			method_8("InitMissionRecords");
		}

		public void SetupHeroAchieves()
		{
			method_8("SetupHeroAchieves");
		}

		public void OnFullDefLoaded(string cardId, FullDef def, object userData)
		{
			method_8("OnFullDefLoaded", cardId, def, userData);
		}

		public void SetSelectedButton(PracticeAIButton button)
		{
			method_8("SetSelectedButton", button);
		}

		public void DisableAIButtons()
		{
			method_8("DisableAIButtons");
		}

		public void EnableAIButtons()
		{
			method_8("EnableAIButtons");
		}

		public bool OnNavigateBack()
		{
			return method_11<bool>("OnNavigateBack", Array.Empty<object>());
		}

		public void BackButtonReleased(UIEvent e)
		{
			method_8("BackButtonReleased", e);
		}

		public void PlayGameButtonRelease(UIEvent e)
		{
			method_8("PlayGameButtonRelease", e);
		}

		public void AIButtonPressed(UIEvent e)
		{
			method_8("AIButtonPressed", e);
		}

		public void UpdateAIButtons()
		{
			method_8("UpdateAIButtons");
		}

		public void UpdateAIButtonPositions()
		{
			method_8("UpdateAIButtonPositions");
		}

		public void UpdateAIDeckButtons()
		{
			method_8("UpdateAIDeckButtons");
		}

		public void FireTrayLoadedEvent()
		{
			method_8("FireTrayLoadedEvent");
		}

		public bool OnFindGameEvent(FindGameEventData eventData, object userData)
		{
			return method_11<bool>("OnFindGameEvent", new object[2] { eventData, userData });
		}
	}
}
